package com.localking.algorithm.leetcode.array

/**
 * Given a binary array, find the maximum number of consecutive 1s in this array
 *
 * Example 1:
 * Input: [1, 1, 0, 1, 1, 1]
 * Output: 3
 * Explanation: The first two digits or the last three digits are consecutive 1s.
 * The maximum number of consecutive 1s is 3
 *
 * Note:
 * * The input array will only contain 0 and 1
 * * The length of input array is a positive integer and will not exceed 10000
 *
 * @author jinbo
 */
object MaxConsecutiveOnes {

  def main(args: Array[String]): Unit = {
  }

  def findMaxConsecutiveOnes(nums: Array[Int]): Int = {
    var max = 0
    var current = 0
    for (num <- nums) {
      num match {
        case 1 => current += 1
        case _ => if (current > max) {
          max = current
        }
          current = 0
      }
    }
    if (max > current) max else current
  }
}
